package com.cmict.data.bpm.convert.message;

import com.cmict.data.framework.common.pojo.PageResult;
import com.cmict.data.bpm.controller.admin.task.vo.task.message.TaskMessageCreateReqVO;
import com.cmict.data.bpm.controller.admin.task.vo.task.message.TaskMessageRespVO;
import com.cmict.data.bpm.controller.admin.task.vo.task.message.TaskMessageUpdateReqVO;
import com.cmict.data.bpm.dal.dataobject.task.TaskMessageDO;
import com.cmict.data.infra.api.message.dto.TaskMessageDTO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * 流程消息 Convert
 *
 * @author liutao
 */
@Mapper
public interface TaskMessageConvert {

    TaskMessageConvert INSTANCE = Mappers.getMapper(TaskMessageConvert.class);

    TaskMessageDO convert(TaskMessageCreateReqVO bean);

    TaskMessageDO convert(TaskMessageUpdateReqVO bean);

    TaskMessageDO convert(TaskMessageDTO bean);

    TaskMessageRespVO convert(TaskMessageDO bean);

    List<TaskMessageRespVO> convertList(List<TaskMessageDO> list);

    PageResult<TaskMessageRespVO> convertPage(PageResult<TaskMessageDO> page);

}
